#---------------------------------------------------------------
project(DEW_Server)
#---------------------------------------------------------------
set(HDRS_NET
	./src/Network/Server.h
	./src/Network/ServerUser.h
)
SOURCE_GROUP("Header Files\\Network" FILES ${HDRS_NET})
#---------------------------------------------------------------
set(SRCS_NET
	./src/Network/Server.cpp
	./src/Network/ServerUser.cpp
)
SOURCE_GROUP("Source Files\\Network" FILES ${SRCS_NET})
#---------------------------------------------------------------
set(HDRS_GAME_WORLD_COMPS
	./src/Game/World/Components/Zone.h
	./src/Game/World/Components/Room.h
	./src/Game/World/Components/RoomExistence.h
)
SOURCE_GROUP("Header Files\\Game\\World\\Components" FILES ${HDRS_GAME_WORLD_COMPS})
#---------------------------------------------------------------
set(SRCS_GAME_WORLD_COMPS
	./src/Game/World/Components/Zone.cpp
	./src/Game/World/Components/Room.cpp
	./src/Game/World/Components/RoomExistence.cpp
)
SOURCE_GROUP("Source Files\\Game\\World\\Components" FILES ${SRCS_GAME_WORLD_COMPS})
#---------------------------------------------------------------
set(HDRS_GAME_WORLD_SYS
	./src/Game/World/Systems/ZoneSystem.h
	./src/Game/World/Systems/RoomSystem.h
)
SOURCE_GROUP("Header Files\\Game\\World\\Systems" FILES ${HDRS_GAME_WORLD_SYS})
#---------------------------------------------------------------
set(SRCS_GAME_WORLD_SYS
	./src/Game/World/Systems/ZoneSystem.cpp
	./src/Game/World/Systems/RoomSystem.cpp
)
SOURCE_GROUP("Source Files\\Game\\World\\Systems" FILES ${SRCS_GAME_WORLD_SYS})
#---------------------------------------------------------------
set(HDRS_GAME_WORLD
	./src/Game/World/Exit.h
)
SOURCE_GROUP("Header Files\\Game\\World" FILES ${HDRS_GAME_WORLD})
#---------------------------------------------------------------
set(SRCS_GAME_WORLD
	
)
SOURCE_GROUP("Source Files\\Game\\World" FILES ${SRCS_GAME_WORLD})
#---------------------------------------------------------------
set(HDRS_GAME
	./src/Game/GameManager.h
	./src/Game/EntityManager.h
	./src/Game/Entity.h
)
SOURCE_GROUP("Header Files\\Game" FILES ${HDRS_GAME})
#---------------------------------------------------------------
set(SRCS_GAME
	./src/Game/GameManager.cpp
	./src/Game/EntityManager.cpp
)
SOURCE_GROUP("Source Files\\Game" FILES ${SRCS_GAME})
#---------------------------------------------------------------
set(HDRS
	${HDRS_NET}
	${HDRS_GAME}
	${HDRS_GAME_WORLD}
	${HDRS_GAME_WORLD_COMPS}
	${HDRS_GAME_WORLD_SYS}
)
#---------------------------------------------------------------
set(SRCS
	./src/main.cpp
	${SRCS_NET}
	${SRCS_GAME}
	${SRCS_GAME_WORLD}
	${SRCS_GAME_WORLD_COMPS}
	${SRCS_GAME_WORLD_SYS}
)
#---------------------------------------------------------------
include(${CubeMUD_SOURCE_DIR}/Common/cmake/Config.cmake)
include_directories(${CubeMUD_SOURCE_DIR}/Server/src)
#---------------------------------------------------------------
set(CMAKE_MODULE_PATH ${CubeMUD_SOURCE_DIR}/Common/cmake/Modules)
find_package(ZLIB REQUIRED)
find_package(ClanLib REQUIRED)
#---------------------------------------------------------------

#---------------------------------------------------------------
add_executable(DEW_Server
	${HDRS} ${SRCS}
)
#---------------------------------------------------------------
set_target_properties(DEW_Server PROPERTIES DEBUG_POSTFIX _d)
set_target_properties(DEW_Server PROPERTIES LINKER_LANGUAGE CXX)
#---------------------------------------------------------------
target_link_libraries(DEW_Server
	TotemEDK
	debug ${ZLIB_LIBRARY_DEBUG} optimized ${ZLIB_LIBRARY_RELEASE}
	debug ${CL_CORE_LIB_DEBUG} optimized ${CL_CORE_LIB_RELEASE}
	debug ${CL_NET_LIB_DEBUG} optimized ${CL_NET_LIB_RELEASE}
)
#---------------------------------------------------------------